1. Field of the Invention
This invention relates to an improved method of handling and accessing library and non-library information through a novel use of application programming interfaces (APIs).
2. Description of Related Art
A digital library system typically handles a large amount of both structured information (e.g., bibliographic data, catalog data, structured documents, business data) and unstructured information (e.g., image, text, audio, video). Each form of data is usually managed by a separate, specialized resource manager. For example, a database management system (DBMS), such as DB2 (TM), may be used to manage structured data; an object repository system, such as ADSM (TM), may be used to manage image and text; and a stream-data server, such as TigerShark (TM), may be used to manage audio and video.
To manage these data properly for a digital library, a customized data model is frequently required, involving application-specific tables, attributes, structures, relationships, constraints, semantics, and optimization. In many cases, a digital library is an extension of a customer's existing database and production applications. In other cases, it is a component of the customer's overall information technology vision. Thus, the data management requirements can be much broader than those of the digital library alone. For these reasons, the data model requirements are often different even between two similar digital libraries within the same industry.
In the publishing industry, for example, a publisher typically designs its own proprietary database to maintain its bibliography and content data for producing new electronic products. There are also reported cases that different organizations within a large enterprise require different metadata on the same data. Therefore, it is not possible to pre-design a fixed model of a database that can support all digital library applications, except for the case where a relatively simple and generic model is sufficient, for instance, the VisualInfo (TM) product sold by IBM Corporation, the assignee of the present invention.
A digital library or content management system usually supports a high-level content model, such as document, folder, and card-catalog. This high-level model is usually built on top of a relational database management system (RDBMS). To access library content, an application such as VisualInfo(TM) typically uses a system-provided API. This assures that the integrity of the system and of the content model are not compromised. It also controls accesses to the system to assure only authorized accesses are allowed.
This design is logical. However, when such a system is used to support diverse applications, the system-provided content model is frequently insufficient and often even unsuitable. Unfortunately, no "universal" model has been found for digital libraries. Building another digital library model on top of an existing model can be difficult and the performance penalty is unacceptable.
In fact, even without modeling problems, many high-volume applications need faster access to content. On the other hand, an application often needs to integrate the digital library with a production database. Accessing content through a high-level API does not allow true integration at the database level, which, for example, allows direct joining of library tables with production tables, thereby significantly simplifying query and improving performance.